ggplot2Wlademir Prates
Fique até o final!É um um pacote para criar gráficos, baseado na “Grámatica dos Gráficos”.
Usa componentes semânticos, como escalas e camadas para montar e formatar as visualizações.
O dado deste exemplo está no repositório https://github.com/wrprates/open-data.
Primeiras linhas do dado:
Veja mais: Vídeo de dataset para RH no canal.
library(ggplot2)
grafico_genero_departamento_quantidade <-
ggplot(data, aes(reorder(Gender, EmployeeCount, sum), EmployeeCount, fill = Gender)) +
ggtitle("Gênero por departamento") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_col() +
geom_text(
aes(label = after_stat(y), group = Gender),
stat = 'summary',
fun = sum,
vjust = -0.5,
) + facet_wrap(~ Department, scales = "fixed") +
scale_y_continuous(labels = scales::number) grafico_genero_departamento_porcentagem <-
ggplot(data, aes(x = Gender, group = Department)) +
ggtitle("Gênero por departamento") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_bar(aes(y = after_stat(prop), fill = factor(..x..)), stat = "count") +
geom_text(aes(label = scales::percent(after_stat(prop)),
y = after_stat(prop)),
stat = "count",
vjust = -0.5) +
labs(y = "Percent", fill = "Gender") +
facet_wrap(~ Department) +
scale_y_continuous(labels = scales::percent) +
scale_fill_discrete(name = "Gender", labels = c("Female", "Male")) grafico_horas_extras_por_departamento <-
ggplot(data, aes(x = OverTime, group = Department)) +
ggtitle("Horas extras por departamento") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_bar(aes(y = after_stat(prop), fill = factor(..x..)), stat = "count") +
geom_text(aes(label = scales::percent(after_stat(prop)),
y = after_stat(prop)),
stat = "count",
vjust = -0.5) +
labs(y = "Percent", fill = "OverTime") +
facet_grid( ~ Department) +
scale_y_continuous(labels = scales::percent) +
scale_fill_manual(
values = c("#4192B5", "#E89978"),
name = "Over Time",
labels = c("No", "Yes")
) grafico_departamento_demissao_voluntaria <-
ggplot(data, aes(x = Attrition, group = JobRole)) +
ggtitle("Demissão voluntária por cargo") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_bar(aes(y = after_stat(prop), fill = factor(..x..)), stat = "count", position="dodge") +
geom_text(aes(label = scales::percent(after_stat(prop)),
y = after_stat(prop)),
stat = "count",
vjust=1, color="black", size=2.0) +
labs(y = "Percent", fill = "Attrition") +
facet_wrap(~ JobRole) +
scale_y_continuous(labels = scales::percent) +
scale_fill_manual(values = c("#4192B5", "#E89978"), name = "Attrition", labels = c("No", "Yes"))ggplot2Obrigado!